Co je algoritmus
Algoritmus je termín původem z latiny, který označuje přesný postup řešení problému nebo úkolu. Používá se hlavně v oblasti programování, a proto úzce souvisí s vytvářením webových stránek či aplikací apod. Dále ho lze zařadit i pod internetový marketing, a ještě přesněji SEO, kde se vyskytuje jako dvouslovný pojem algoritmus vyhledávače. Tím se rozumí metody, které využívají vyhledávací roboti k hodnocení webů, aby je následně zobrazovaly v konkrétním pořadí ve výsledcích (SERP).
Algoritmus v programování
Pro programátory představuje algoritmus návrh řešení, který můžeme v rámci běžného života vyjádřit jako recept. Ten také komplexně vypovídá o tom, s jakými ingrediencemi a jak dosáhneme požadovaného výsledku, tedy např. uvaříme bramborovou polévku. Algoritmem může být z tohoto hlediska třeba i návod, jak si zavázat tkaničku nebo nastartovat auto.
Programováním se rozumí zakódování vytvořeného algoritmu do programovacího jazyka (C++, PHP, Java apod). Výsledkem takového zápisu je program – realizace postupu krok po kroku.
Algoritmus vyhledávače
V souvislosti s vyhledávači přebírá algoritmus roli něčeho záhadného. Všichni SEO specialisté, marketéři a provozovatelé webů by ho chtěli odhalit a rozluštit, ale jak Seznam, tak Google ho tají. Druhý jmenovaný ho nazývá Panda a neustále ho vylepšuje s cílem přinášet uživatelům internetu vždy co nejužitečnější a nejpřínosnější odpovědi na jejich dotazy. Toto pojetí algoritmu tedy vyjadřuje metodiku určování kvality stránek, podle které pak dochází k přiřazování pozic ve výsledcích vyhledávání.
Vlastnosti algoritmu
Aby měl algoritmus smysl, musí být plně srozumitelný pro toho, kdo ho bude vykonávat. Proto by měl disponovat následujícími vlastnostmi:
-
správnost – výstup algoritmu musí být správný,
-
rezultativnost – vždy musí přinést výsledek (byť i hlášení o chybě),
-
konečnost – měl by mít jasně stanovené dílčí fáze, které vedou z bodu A do bodu B,
-
hromadnost – algoritmus musí být aplikovatelný na určitou skupinu úloh, nikdy by neměl řešit jediný specifický problém,
-
determinovanost neboli jednoznačnost – musí být přesně dané, co následuje po splnění určitého kroku,
-
opakovatelnost – při zadání stejných vstupních dat musí algoritmus vrátit opět shodný výsledek.